<?php
if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Chuyenkhoan extends CI_Controller {	
	 public function __construct(){
		parent::__construct();		
		if(!$this->session->userdata('admin'))
			redirect(base_url('admin/login'));
		$this->load->model('payment_m', 'payment');
    }
	
	function index() {
		$data = array();
		$data['ctu']		= $this->payment->get_ctu_chuyenkhoan();
		$data['main_content'] = 'admin/payment/chuyenkhoan';
      $this->load->view('admin/includes/template', $data);
	}
	
	function form($id = false){
		if($id)
			redirect(base_url('admin/chuyenkhoan'));
		$this->load->helper('url');
		$this->load->helper('form');
		$this->load->library('form_validation');
		
		//set the default values
		$data['id']				= '';
		$data['user_id']		= '';
		$data['ma_ctu']	   = '';
		$data['acc_ref']	   = '';
		$data['ho_ten']		= '';
		$data['so_tien']		= '';
		$data['so_diem']		= '';
		$data['ngay_nop']		= '';
		$this->load->model('option_m', 'option');
		$data['money_per_point']	=	$this->option->get_option_by_key('money_per_point')->value;
		$data['page_title']	= 'Chứng từ chuyển khoản';
		//
		$this->load->model('users_m', 'user');
		$data['users']			= $this->user->get_user_by_type(2, true);
		if($id){
			$ctu			= $this->payment->get_payment($id);
			if(!$ctu){
				//option does not exist
				$this->session->set_flashdata('error', 'Chứng từ không tìm thấy');
				redirect('admin/chuyenkhoan');
			}
			// echo '<pre>';print_r($ctu);die;
			//set values to db values
			$data['id']				= $ctu->id;
			$data['user_id']		= $ctu->user_id;
			$data['ma_ctu']	   = $ctu->ma_ctu;
			$data['acc_ref']	   = $ctu->acc_ref;
			$data['ho_ten']		= $ctu->ho_ten;
			$data['so_tien']		= $ctu->so_tien;
			$data['so_diem']		= $ctu->so_diem;
			$data['ngay_nop']		= date('d/m/Y',strtotime($ctu->ngay_nop));
		}
		
		$this->form_validation->set_rules('user_id', '<b>Người nộp</b>', 'trim|required');
		$this->form_validation->set_rules('ma_ctu', '<b>Mã chứng từ</b>', 'trim|required');
		$this->form_validation->set_rules('ho_ten', '<b>Họ tên người nộp</b>', 'trim|required');
		$this->form_validation->set_rules('so_tien', '<b>Số tiền</b>', 'number|trim|required');
		$this->form_validation->set_rules('ngay_nop', '<b>Ngày nộp</b>', 'trim|required');
		
		// Validate the form
		if($this->form_validation->run() == false){			
			$data['main_content'] = 'admin/payment/chuyenkhoan_form';
			$this->load->view('admin/includes/template', $data);
		}
		else{
			$this->load->helper('text');	
			// echo '<pre>';print_r($this->input->post());die;
			$save = array();
			$save['id']			= $id;
			$save['user_id']	= $this->input->post('user_id');
			$save['ma_ctu']	= $this->input->post('ma_ctu');
			$save['acc_ref']	= $this->input->post('acc_ref');
			$save['ho_ten']	= $this->input->post('ho_ten');
			$save['so_tien']	= $this->input->post('so_tien');
			$save['so_diem']	= $this->input->post('so_diem');
			$save['ngay_nop'] = date('Y-m-d', strtotime(str_replace('/','-',$this->input->post('ngay_nop'))));
			$save['ngay_nhap']= date('Y-m-d H:i:s');
			//save
			$this->db->trans_start();
			//payment table
			$payment_id	= $this->payment->save($save);
			//tien_ao table
			$this->payment->save_tien_ao(array('user_id'=>$save['user_id'],'so_diem'=>$save['so_diem']));
			//thanh_toan table
			$this->payment->save_thanh_toan(array(
				'user_id'	=>	$save['user_id'],
				'noi_dung'	=>	"Nộp tiền vào tài khoản, số điểm được cộng: <b>{$save['so_diem']}</b>",
				'point'		=>	$save['so_diem'],
				'ngay'		=> date('Y-m-d H:i:s')
			));
			$this->db->trans_complete();
			if($this->db->trans_status() === FALSE)
				$this->session->set_flashdata('error', 'Lưu dữ liệu không thành công');
			else
				$this->session->set_flashdata('message', 'Lưu dữ liệu thành công');
			//go back to the message list
			redirect('admin/chuyenkhoan');
		}
	}
	
	function delete($id){
		$option	= $this->option->get_option($id);
		if($option){
			$this->option->delete_option($id);
			$this->session->set_flashdata('message', 'Xóa thành công');
		}else{
			$this->session->set_flashdata('error', 'Có lỗi xảy ra');
		}
		redirect('admin/options');
	}
}